Modern digital communication systems are increasingly required to offer unified platforms for different types of services, such as voice, video, electronic mail (e-mail) and Web browsing. All of these services, each with its own Quality of Service (QoS) requirements, must be carried over a common channel. An important aspect of QoS is delay: while some applications, such as e-mail, can tolerate large delays and variations in delay from packet to packet, services such as packetized voice require that delay be maintained within strict limits.
Problems of packet delay are exacerbated particularly over low-bandwidth channels, such as copper wire access networks. This type of network is used in Digital Subscriber Line (DSL) service, which typically offers variable data rates that range from about 100 kbps up to 2.3 Mbps, depending on line quality and network conditions. To exemplify the problem, assume that packets carried over DSL lines can range in size from 64 bytes up to 1544 bytes, as is common in Internet Protocol (IP) networks. At 2 Mbps, a 64-byte packet will take only 250 μs to transmit, while at 128 kbps, it will take 4 ms. On the other hand, at 128 kbps, a 1544-byte packet will take 96 ms to transmit. If a stream of short voice packets is interspersed with long e-mail packets over a 128 kbps channel, as may commonly happen, the voice packets will usually follow one another almost instantaneously, but will at times be delayed by as much as 96 ms while waiting for a long e-mail packet to pass. To deal with this large jitter, the receiver in such a system must have a deep buffer and will have a long, built-in delay of nearly 100 ms in delivering the packets to the user.
One solution to this problem is to fragment packets into smaller units at the transmitter, and then reassemble the packets at the receiver. For example, in Asynchronous Transfer Mode (ATM) networks, all data are transmitted in cells of exactly 53 bytes each. Each cell must carry its own five-byte header, thus adding a 10% overhead factor to the packet overhead already existing in the system. This high overhead rate must be tolerated in low-bandwidth channels, in order to keep the maximum delay of high-priority packets (such as voice) within limits of a few milliseconds. When higher bandwidth is available, however, it is desirable to use longer fragments, in order to reduce the relative transmission overhead.
Thus, there are fragmentation schemes known in the art that allow the system operator to select the fragment size that will be used over a given channel. One such scheme is described in Frame Relay Fragmentation Implementation Agreement FRF.12, published by the Frame Relay Forum. This document, which is incorporated herein by reference, is also included as an appendix in the above-mentioned provisional patent application. The FRF.12 agreement specifies that when data frames longer than a preset length are to be transmitted over a frame relay channel, the frames are first divided into fragments. Each fragment includes a Beginning and Ending flag and a sequence number, which enable the receiver to sort and reassemble the fragments back into the original frames, along with other header information. The total number of overhead bits is thus fixed, but the size of the payload data varies depending on the selected fragment size.
The FRF.12 agreement presents an analysis of transmission efficiency (ratio of payload to total data carried by a fragment) as a function of payload size, in which it is shown that the efficiency generally increases as the payload size grows. The agreement indicates that the maximum fragment size should be configured by the operator for each channel depending on the speed and application requirements of the channel. For variable-rate channels, such as DSL links, this means that the fragment size must be set for the worst case, i.e., the slowest possible channel speed, in order to avoid unacceptable delays. Thus, even when high-speed service becomes available, the efficiency of transmission is limited by the low-speed fragmentation constraints.